package com.xuelang.pipeline.client.pipeline.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

/**
 * 流水线变量设置DTO
 *
 * @author xiwen.zxg
 * @since 2024/6/7
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class VariableSettingDTO {


    /**
     * 主键，自增
     */
    private Long id;

    /**
     * 流水线编码
     */
    private String pipelineCode;

    /**
     * 变量名称
     */
    private String name;

    /**
     * 默认值
     */
    private String defaultValue;

    /**
     * 是否通用变量，1是0否
     */
    @Builder.Default
    private Integer isCommon = 0;

    /**
     * 私密模式，1开启0关闭
     */
    private Integer isPrivate;

    /**
     * 运行时设置，1开启0关闭
     */
    private Integer isRunSetting;

    /**
     * 选项，待定义
     */
    private String option;

    /**
     * 是否运行选择变量，1是0否
     */
    private Integer isRunSelect;

    /**
     * 创建人
     */
    private String creatorId;

    /**
     * 创建时间
     */
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 更新人ID
     */
    private String updaterId;

    /**
     * 更新时间
     */
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
}
